package com.train.mgr.modules.biz.dto.response;

import com.train.mgr.modules.system.dto.request.groups.Insert;
import com.train.mgr.modules.system.dto.request.groups.Update;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;
import java.util.Map;

@Data
public class LessonDetailRespDTO {

    @ApiModelProperty(name = "id", value = "课时ID")
    private Long id;

    @ApiModelProperty(name = "courseId", value = "课程ID")
    private Long courseId;

    @ApiModelProperty(name = "courseName", value = "课时名称",required = true)
    private String lessonName;

    @ApiModelProperty(name = "salesMethods", value = "销售方式")
    private String salesMethods;

    @ApiModelProperty(name = "salesLanguageMap", value = "销售话术(MAP格式)")
    private Map<String, String> salesLanguageMap;

    @ApiModelProperty(name = "keywords", value = "关键字")
    private String keywords;

    @ApiModelProperty(name = "practiceProject", value = "练习项目")
    private String practiceProject;

    @ApiModelProperty(name = "studyFiles", value = "学习附件:举例(/uploadfile/20251001/mp3/1.mp3,/uploadfile/20251001/doc/2.doc)")
    private String studyFiles;

    @ApiModelProperty(name = "passingScoreMap", value = "通关及及格(以json格式给到后端API,举例:{'1':'60','2':'60','3':'60'})，注意是双引号,其中：1-话术跟读、2-脱稿演练、3-模拟对话")
    private Map<String, String> passingScoreMap;

    @ApiModelProperty(name = "roleSelectList", value = "角色设定选择列表对象，举例:[11111,2222,3333]")
    private List<roleItem> roleSelectList;

    @Data
    public static class roleItem{

        @ApiModelProperty(name = "roleId", value = "角色ID")
        private long roleId;

        @ApiModelProperty(name = "roleName", value = "角色名称")
        private String roleName;

        @ApiModelProperty(name = "roleDefinition", value = "角色定义")
        private String roleDefinition;

        @ApiModelProperty(name = "sex", value = "性别（1：男；2：女）")
        private int sex;

        @ApiModelProperty(name = "backgroundInformation", value = "背景信息")
        private String backgroundInformation;

        private long customerId;
    }

}
